iT邦幫忙

2023 iThome 鐵人賽

DAY 10
0

You Only Learn One Representation: Unified Network for Multiple Tasks

Chien-Yao Wang, I-Hau Yeh, and Hong-Yuan Mark Liao

~台灣之光~

  • 正常學習(Explicit knowledge),淺意識學習(Implicit knowledge)。
  • 藉由Explicit以及Implicit knowledge訓練出統一的模型,可以同時解決不同的任務
  • 提出implicit knowledge以及其使用的方式。

問題:

  • 我們只會使用CNN提取出的影像特徵(explocit knowledge),忽略了豐富存在於CNN的implicit knowledge。
  • 沒有明確定義implicit knowledge以及如何取得。
    • 一般定義:
      • Explicit Knowledge: 淺層所獲得的特徵。
      • Implicit Knowledge: 深層所獲得的特徵。
    • 論文定義:
      • Explicit Knowledge: 可以直接從輸入資料的特徵發現到。
      • Implicit Knowledge: 隱藏在模型當中且無法被直接觀察到。

Explicit 深度學習:

其他方法:

  • Transformer: 用Query、key、Value獲得Self-Attention。
  • Non-local network: 在時間以及空間獲得Pair-wise Attention。
  • 從Input data自動挑選適當的kernel。

Implicit 深度學習:

其他方法

  • Implicit neural representation:利用離散輸入的連續參數化映射representation來處理不同的任務。
  • Deep equilibrium models: 將Implicit knowledge的學習方式轉成殘差網路並且對其進行平衡點(equilibrium point)計算。

本文方法:

高維空間降維(Manifold space reduction)

  • https://ithelp.ithome.com.tw/upload/images/20230925/20120310VvwgIvtWro.png為 implicit representation,為常數張量(tensor)的集合https://ithelp.ithome.com.tw/upload/images/20230925/20120310fBS3zr0xwS.png
  • 若目標類別可以分類的很好,則該類別的representation映射在高維空間也要能很好的被分類。
  • 因此可以將映射向量跟implicit representation求內積降低高維空間的維度,來達到處理不同任務的目標。
    https://ithelp.ithome.com.tw/upload/images/20230925/20120310jfsgzYqqkL.png

Kernel空間對齊

  • 不同的任務或是mult-head的神經網路輸入資料的特徵空間可能因不同任務而不一致,因此需要進行平移旋轉等操作進行對齊。

    https://ithelp.ithome.com.tw/upload/images/20230925/20120310BWUfIeJ7Ar.png

公式

  • CNN:
    • 常見公式為: https://ithelp.ithome.com.tw/upload/images/20230925/20120310wTMtkwLz4z.png,目標是要讓預測結果與正確解答間的差異能夠越小越好https://ithelp.ithome.com.tw/upload/images/20230925/20120310DyzVVky8dE.png,相當於讓相同任務目標的解能夠匯聚在同一個點上,但是此作法只能處理單一任務。

      https://ithelp.ithome.com.tw/upload/images/20230925/20120310ZIgdf16DLF.png

    • 為了實現多任務,要讓每個任務在同一時刻manifold空間都盡可能找到解答,但這樣的方法很難利用簡單的數學公式替每個任務進行求解。

    • 因此提出一個error term方法

      https://ithelp.ithome.com.tw/upload/images/20230925/20120310jd8EK3h9xI.png

Knowledge 建模:

整合Explicit Knowledge以及Implicit Knowledge的方法。

其他方法

  • Sparse Representation: 利用範例或是事先定義好的字典進行建模。
  • Memory Network: 整合各種不同形式的Embedding並形成可動態添加或是修改的Memory。

整體網路架構

https://ithelp.ithome.com.tw/upload/images/20230925/20120310J3mnupasFt.png

  • 本架構有根據論文架構圖自行修改過,若有錯誤歡迎指正。

統一網路

  • 添加explicit以及implicit knowledge去引導整個多任務神經網路的學習,https://ithelp.ithome.com.tw/upload/images/20230925/20120310JfmTOfAeHr.png依照任務選取或是組合explicit以及implicit knowledge的操作。
    https://ithelp.ithome.com.tw/upload/images/20230925/201203104NtUPRdgld.png
  • 簡化公式後:
    https://ithelp.ithome.com.tw/upload/images/20230925/20120310NxE29cMsO6.pnghttps://ithelp.ithome.com.tw/upload/images/20230925/20120310W7iYBOJL8i.png代表結合https://ithelp.ithome.com.tw/upload/images/20230925/20120310U7NEbPOcz9.png以及https://ithelp.ithome.com.tw/upload/images/20230925/20120310Sk1jOQeACq.png的操作(相加、相乘、concatenation)。
  • 處理不同任務:https://ithelp.ithome.com.tw/upload/images/20230925/2012031078zu97Klwz.png
    • https://ithelp.ithome.com.tw/upload/images/20230925/20120310ffwBcpc1di.png不同任務T對應的implicit latent code。
    • https://ithelp.ithome.com.tw/upload/images/20230925/20120310lCBfuWCUlM.png,用以從z提取出implicit representation的超參數。
    • https://ithelp.ithome.com.tw/upload/images/20230925/201203102TFvjY2qwJ.png,計算最終輸出的超參數。https://ithelp.ithome.com.tw/upload/images/20230925/20120310A98LVMiyhc.png
  • 步驟:
    1. 先求共用的representation: https://ithelp.ithome.com.tw/upload/images/20230925/20120310PE4KWH4Tcu.png
    2. 求對應任務的implicit representation,https://ithelp.ithome.com.tw/upload/images/20230925/20120310GgEbRh0OB4.png
    3. 利用對應任務的鑑別器,https://ithelp.ithome.com.tw/upload/images/20230925/20120310YTSptRd0VL.png,完成不同的任務。

實驗結果

  • Dataset採用: MSCOCO

  • 要解決的任務: 物件偵測、實例分割、全景分割(panoptic segmentation)、關鍵點偵測、物件分割(stuff segmentation)、圖片敘述(image caption)、多標註物件分類、長尾分布辨識(
    long tail object recognition)。

  • 以YOLOv4為Backbone,引入implicit knowledge進去模型:

    https://ithelp.ithome.com.tw/upload/images/20230925/20120310YPQTsbtQUo.png

    • Feature alignment:

      https://ithelp.ithome.com.tw/upload/images/20230925/20120310R8sYfpMH58.png

    • Prediction refinement:
      沒加此技術,模型仍然可以完成原有的物件偵測任務。

      https://ithelp.ithome.com.tw/upload/images/20230925/20120310d521l8adHP.png

  • 多任務:

    • 如果只是將多目標的任務的loss設計在一起,這樣會讓整個模型效能下降,甚至比不上將不同模型分開訓練後整合在一起的結果。

    • 因此引入implicit representation進去實現多任務:

      https://ithelp.ithome.com.tw/upload/images/20230925/20120310dmIEFlyNH7.png

      • 結合偵測以及分類任務的loss操作實驗結果(JDE),引入implicit進去的實驗結果(iJDE)
  • Implicit representation與explicit representation的結合方式:

    • 實驗做了feature alignment以及prediction refinement。

    • Feature alignment:

      https://ithelp.ithome.com.tw/upload/images/20230925/20120310miEuwCtLwz.png

    • Prediction refinement: 相乘比相加好,但沒比較concatenation,因為concate後的輸出維度會變。

      https://ithelp.ithome.com.tw/upload/images/20230925/20120310TFdQGDdwWu.png

  • 參數量、FLOPs:

    https://ithelp.ithome.com.tw/upload/images/20230925/20120310cgNVqtWCFE.png

  • 跟其他方法的比較:
    不用增加額外的訓練資料或是標註檔案,並且可以達到與當時最好方法差不多的效果。

    https://ithelp.ithome.com.tw/upload/images/20230925/20120310DtqlGXvRCj.png

文章使用之圖片擷取自該篇論文


上一篇
[DAY 9] PP-YOLO
下一篇
[DAY 11] YOLOX
系列文
YOLO系列網路技術採用以及實作30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言